6.2.2 镜像通常比较小

容器目的就是运行应用或者服务,这意味着容器的镜像中必须包含应用/服务运行所必需的操作系统和应用文件。但是,容器又追求快速和小巧,这意味着构建镜像的时候通常需要裁剪掉不必要的部分,保持较小的体积。

例如,Docker镜像通常不会包含6个不同的Shell让读者选择——通常Docker镜像中只有一个精简的Shell,甚至没有Shell。镜像中还不包含内核——容器都是共享所在Docker主机的内核。所以有时会说容器仅包含必要的操作系统(通常只有操作系统文件和文件系统对象)。

注:

Hyper-V容器运行在专用的轻量级VM上,同时利用VM内部的操作系统内核。

Docker官方镜像Alpine Linux大约只有4MB,可以说是Docker镜像小巧这一特点的比较典型的例子。这可不是写错了!确实只有大约4MB!但是,镜像更常见的状态是如Ubuntu官方的Docker镜像一般,大约有110MB。这些镜像中都已裁剪掉大部分的无用内容。

Windows镜像要比Linux镜像大一些,这与Windows OS工作原理相关。比如,未压缩的最新Microsoft .NET镜像( microsoft/dotnet:latest )超过1.7GB。Windows Server 2016 Nano Server镜像( microsoft/nanoserver:latest )在拉取并解压后,其体积略大于1GB。

results matching ""

    No results matching ""